<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <AssemblyName>ILCompiler.Reflection.ReadyToRun</AssemblyName>
    <AssemblyVersion>1.0.0.0</AssemblyVersion>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <OutputType>Library</OutputType>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <AssemblyKey>Open</AssemblyKey>
    <IsDotNetFrameworkProductAssembly>true</IsDotNetFrameworkProductAssembly>
    <!-- ILSpy requires this assembly to target netstandard2.0 -->
    <TargetFramework>netstandard2.0</TargetFramework>
    <CLSCompliant>false</CLSCompliant>
    <NoWarn>8002,NU1701</NoWarn>
    <RuntimeIdentifiers>win-x64;win-x86</RuntimeIdentifiers>
    <OutputPath>$(RuntimeBinDir)</OutputPath>
    <Platforms>AnyCPU;x64</Platforms>
    <PlatformTarget>AnyCPU</PlatformTarget>
    <RunAnalyzers>false</RunAnalyzers>
    <!--
      The SDK warns if a project targets a framework that doesn't support trimming and IsTrimmable is true.
      We set IsTrimmable higher up in the Directory.Build.props files, so we reset it to false here.
    -->
    <IsTrimmable>false</IsTrimmable>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataVersion)" />
    <PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="$(SystemRuntimeCompilerServicesUnsafeVersion)" />
  </ItemGroup>

  <ItemGroup>
    <Compile Include="..\..\Common\Internal\Runtime\CorConstants.cs" Link="Common\CorConstants.cs" />
    <Compile Include="..\..\Common\Internal\Runtime\ModuleHeaders.cs" Link="Common\ModuleHeaders.cs" />
    <Compile Include="..\..\Common\Internal\Runtime\ReadyToRunConstants.cs" Link="Common\ReadyToRunConstants.cs" />
    <Compile Include="..\..\Common\Internal\Runtime\ReadyToRunInstructionSet.cs" Link="Common\ReadyToRunInstructionSet.cs" />
    <Compile Include="..\..\Common\Pgo\PgoFormat.cs" Link="Common\PgoFormat.cs" />
  </ItemGroup>
</Project>
